package com.hzit.mmcb.core.service;

import com.hzit.common.result.PageResult;
import com.hzit.mmcb.core.pojo.dto.UserInfoDTO;
import com.hzit.mmcb.core.pojo.entity.UserInfo;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hzit.mmcb.core.pojo.vo.RegisterVO;
import com.hzit.mmcb.core.pojo.vo.UserIndexVO;
import com.hzit.mmcb.core.pojo.vo.UserLoginVO;
import com.hzit.mmcb.core.pojo.vo.UserSearchVO;

import java.util.List;

/**
 * <p>
 * 用户基本信息 服务类
 * </p>
 *
 * @author ljh
 * @since 2024-08-27
 */
public interface UserInfoService extends IService<UserInfo> {

    void register(RegisterVO registerVO);

    UserInfoDTO login(UserLoginVO userLoginVO, String ip);

    PageResult<UserInfo> listPage(Integer page, Integer pageSize, UserSearchVO userSearch);

    void lock(Long id, Integer status);

    boolean checkMobile(String mobile);

    UserIndexVO getIndexUserInfo(Long userId);
}
